/////////////////////////////////////////////////////////////////////////
// All rights reserved
//
// Use and distribute freely, except: don't remove my name from the
// source or documentation (don't take credit for my work), mark your
// changes and extend the author list below, don't alter or remove this notice.
//
// Send bug reports, bug fixes, enhancements, requests, etc.,
// and I'll try to keep a version up to date.
// xiezheheng@yahoo.com
//
// Author list: Zheheng XIE
//
/////////////////////////////////////////////////////////////////////////


#pragma once
#include "dr_dctaligner.h"

class DR_StPlane;
class DR_DCtAlignerPlane : public DR_DCtAligner
{
public:
	DR_DCtAlignerPlane(const SL_Ptr<DR_Fragment>& pFragment,
		const SL_Ptr<DR_StPlane>& pStPlane,
		const SL_Ptr<DR_StXform>& pStXform);
	virtual ~DR_DCtAlignerPlane(void);

	// Compute the transform matrix according to the DR_StPlane
	virtual HRESULT Compute();
private:
	// Input 
	SL_Ptr<DR_StPlane> m_pStPlane;
};
